SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
Create Procedure [dbo].[SP_TDTIPO_OPER_I02]
/*-------------------------------------------------------*/
/*---Empresa              : OFISIS S.A.                --*/
/*---Cliente              : OFISIS S.A.                --*/
/*---Sistema              : Tesoreria	 	       --*/
/*---M¸dulo               : Administaci©n              --*/
/*---Programa             : Copia Tipo Operaci©n       --*/
/*---Script               : TTTIPO_I.SQL	       --*/
/*---Nombre SP            : SP_TDTIPO_OPER_I02         --*/
/*---Desarrollado por     : Denis Villacres	       --*/
/*---Fecha Creaci¸n       : 07/02/2002                 --*/
/*---Base Datos           : Microsoft Sql Server       --*/
/*---Versi¸n              : 7.0                        --*/
/*---Invoca a SP          :                            --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Modificado 1 por     :                            --*/
/*---Fecha Modificaci¸n   :                            --*/ 
/*---Detalle Modificaci¸n :                            --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Comentarios                                       --*/
/*---                                                  --*/
/*---                                                  --*/
/*-------------------------------------------------------*/

/*------------------------------------------------------ */
/* Drop Proc SP_TDTIPO_OPER_I01			 	 */
/* Grant All On SP_TDTIPO_OPER_I02 To Public	 	 */
/* SP_TDTIPO_OPER_I02 '10', '01' ,1		   	 */
/*-------------------------------------------------------*/
 @ISCO_EMPR_ORIG    TD_VC_002, 
 @ISCO_EMPR_DEST    TD_VC_002, 
 @ISCO_TIPO_OPER    TD_VC_003
	As
DECLARE 

 @VNGR_OPER  	TD_IN_001,
 @VNTI_ITES	TD_IN_001,
 @VNTI_OPER	TD_IN_001


  BEGIN TRAN SP_TDTIPO_OPER_I02


	Select	@VNGR_OPER = COUNT(*)	
	From	TTGRUP_OPER
	Where	CO_EMPR = @ISCO_EMPR_DEST

	IF @VNGR_OPER = 0
	   Begin	
		Insert Into TTGRUP_OPER (CO_EMPR, CO_GRUP_OPER, DE_GRUP_OPER, CO_USUA_MODI, FE_USUA_MODI)
		Select	@ISCO_EMPR_DEST, CO_GRUP_OPER, DE_GRUP_OPER, SYSTEM_USER, Getdate()
		From	TTGRUP_OPER
		Where 	CO_EMPR = @ISCO_EMPR_ORIG
	   End
	
        If @@error <> 0
           begin
             rollback tran 
             return
           end

-- Busco si existen datos en la TTTIPO_ITES para la empresa destino

	Select	@VNTI_ITES = COUNT(*)	
	From	TTTIPO_ITES
	Where	CO_EMPR = @ISCO_EMPR_DEST

	IF @VNGR_OPER = 0
	   Begin	
		Insert Into TTTIPO_ITES (CO_EMPR, ID_INTE, NU_DETA, NO_INTE, NO_FISI_TABL, NO_LOGI_TABL, 
			CO_IMPO_0001, CO_IMPO_0002, CO_IMPO_0003, CO_IMPO_0004, CO_IMPO_0005, 
			CO_IMPO_0006, CO_IMPO_0007, CO_IMPO_0008, CO_IMPO_0009, CO_IMPO_0010, 
			CO_IMPO_0011, CO_IMPO_0012, CO_IMPO_0013, CO_IMPO_0014, CO_IMPO_0015,
			CO_USUA_MODI, FE_USUA_MODI)
		Select	@ISCO_EMPR_DEST, ID_INTE, NU_DETA, NO_INTE, NO_FISI_TABL, NO_LOGI_TABL, 
			CO_IMPO_0001, CO_IMPO_0002, CO_IMPO_0003, CO_IMPO_0004, CO_IMPO_0005, 
			CO_IMPO_0006, CO_IMPO_0007, CO_IMPO_0008, CO_IMPO_0009, CO_IMPO_0010, 
			CO_IMPO_0011, CO_IMPO_0012, CO_IMPO_0013, CO_IMPO_0014, CO_IMPO_0015, 
			User, Getdate()
		From	TTTIPO_ITES
		Where 	CO_EMPR = @ISCO_EMPR_ORIG
	   End

        If @@error <> 0
           begin
             rollback tran 
             return
           end


	Select	@VNTI_OPER = COUNT(*)	
	From	TTTIPO_OPER
	Where	CO_EMPR = @ISCO_EMPR_DEST

	IF @VNTI_OPER = 0
	   Begin	
		Insert Into TTTIPO_OPER (CO_EMPR, CO_TIPO_OPER, CO_GRUP_OPER, DE_TIPO_OPER, TI_MOVI, ST_CAJA, 
			ST_BANC, ST_CTAC, ST_CTAP, ST_DETA_DOCU, ST_REPO_CAJA, ST_ENRE_OTRO, 
			ST_TRAN_BANC, ST_TRAN_CAJA, ST_AUXI_0001, ST_AUXI_0002, ST_AUXI_0003, 
			ST_AUXI_0004, ST_AUXI_0005, ST_AUXI_0006, TI_SITU, CO_USUA_MODI, FE_USUA_MODI)
		Select	@ISCO_EMPR_DEST, CO_TIPO_OPER, CO_GRUP_OPER, DE_TIPO_OPER, TI_MOVI, ST_CAJA, 
			ST_BANC, ST_CTAC, ST_CTAP, ST_DETA_DOCU, ST_REPO_CAJA, ST_ENRE_OTRO, 
			ST_TRAN_BANC, ST_TRAN_CAJA, ST_AUXI_0001, ST_AUXI_0002, ST_AUXI_0003, 
			ST_AUXI_0004, ST_AUXI_0005, ST_AUXI_0006, TI_SITU, SYSTEM_USER, Getdate()
		From	TTTIPO_OPER
		Where 	CO_EMPR = @ISCO_EMPR_ORIG
	   End


        Delete  TDTIPO_OPER  
        Where   CO_EMPR = @ISCO_EMPR_DEST
                And CO_TIPO_OPER = @ISCO_TIPO_OPER

        if @@error <> 0
           begin
             rollback tran 
             return
           end


	INSERT 	INTO TDTIPO_OPER (CO_EMPR, CO_TIPO_OPER ,NU_CORR, ID_INTE ,NU_DETA, CO_OPRC_CNTB, NU_ASTO, 
               	CO_CNTA_EMPR, CO_MONE, IN_CNTA_MONE, TI_AUXI_EMPR, TI_DOCU, TI_DOCU_REFE,
               	TI_MOVI, IM_0001, OP_ARIT_0001, IM_0002, OP_ARIT_0002, IM_0003, DE_GLOS )               
        SELECT 	@ISCO_EMPR_DEST, @ISCO_TIPO_OPER, NU_CORR, ID_INTE, NU_DETA ,CO_OPRC_CNTB ,NU_ASTO, 
               	CO_CNTA_EMPR, CO_MONE, IN_CNTA_MONE, TI_AUXI_EMPR, TI_DOCU, TI_DOCU_REFE,
               	TI_MOVI, IM_0001, OP_ARIT_0001, IM_0002, OP_ARIT_0002, IM_0003, DE_GLOS
        FROM 	TDTIPO_OPER
        WHERE 	CO_EMPR = @ISCO_EMPR_ORIG
        	AND CO_TIPO_OPER = @ISCO_TIPO_OPER


       	if @@error <> 0
           begin
             rollback tran 
             return
           end

COMMIT TRAN 

/*---------------------------------- Fin ----------------------------------*/


GO
